package com.gitee.yzycoc;

import com.yzycoc.form.ConfigInput;
import com.yzycoc.info.ModuleInfo;
import com.yzycoc.module.DriverCsRobot;
import com.yzycoc.processor.event.Event;
import com.yzycoc.processor.send.Api;
import lombok.extern.slf4j.Slf4j;

import java.util.Arrays;
import java.util.List;


/**
 * 机器人驱动
 *
 * @author {author}
 * @version 1.0
 **/
@Slf4j
public class BotDriver implements DriverCsRobot {

    static {

        //ModuleManage.register(new BotDriver());

    }


    public static Api API;

    @Override
    public ModuleInfo info() {
        return ModuleInfo.builder()
                //SDK 保障唯一性
                .name("cs-guild")
                //简介说明
                .description("频道专属插件")
                //版本
                .version("1.0.0")
                //作者
                .author("仓鼠")
                //作者头像
                .authorUrl("https://yzycoc.com/i/10")
                //作者主页
                .authorWeb("https://yzycoc.com")
                .build();
    }

    /**
     * 事件监听 私聊消息 群聊消息监听，支持多个
     *
     * @return 事件监听方法
     */
    @Override
    public List<Event> event() {
        return Arrays.asList(new SdkEvent());
    }

    /**
     * 获取API 系统只会初始化一次 需要进行存储起来
     *
     * @param api 发送消息 获取API 相关信息
     */
    @Override
    public void api(Api api) {
        API = api;
    }

    /**
     * 菜单配置的基础信息
     *
     * @return 表单信息
     */
    @Override
    public ConfigInput config() {
        return null;
    }


    /**
     * 生命周期，插件初始化后执行的方法
     */
    @Override
    public void runSucceed() {

    }


}
